<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        const p1 = new Promise((resolve,reject)=>{
            console.log("开始请求数据....");
            // throw new Error("我是Promise实例回调中的报错")//改变p1的状态和值,阻断后续代码执行
            //异步代码可能发生未知的错误,所以需要try catch捕获
            try{
                // throw new Error("我是try内部的报错")//p1的状态时pending,阻断try内部后续代码的执行
                setTimeout(()=>{
                    // throw new Error("我是setTimeout内部的报错")//p1的状态时pending,阻断异步代码中的后续代码执行
                    console.log("数据请求成功....");
                    resolve("1000")
                },2000)
                console.log("看看哪里的报错能阻挡我");
            }catch(e){
                //处理异步try内部的错误信息
                // console.log(e);
                reject(e.message)//只有检测报错信息的功能,并不能改变报错阻断后续代码执行的状态
            }
        })

        console.log("p1",p1);
    </script>
</body>
</html>